package com.tich.blog.service;

import com.tich.blog.domain.dto.BlogCommentDTO;
import com.tich.blog.domain.dto.BlogSonCommentDTO;
import com.tich.blog.domain.dto.CommentPublishDTO;
import com.tich.blog.domain.entity.BlogComments;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tich.blog.domain.vo.BlogCommentVO;
import com.tich.blog.domain.vo.CommentSimpleVO;

/**
 * <p>
 * 博客评论表 服务类
 * </p>
 *
 * @author 王志宇
 * @since 2025-05-14
 */
public interface IBlogCommentsService extends IService<BlogComments> {

    /**
     * 根据帖子id删除帖子相关的评论
     * @param blogId
     */
    void deleteCommentByBlogId(Long blogId);

    /**
     * 发表评论
     * @param commentPublishDTO
     */
    void saveBlogComment(CommentPublishDTO commentPublishDTO);


    /**
     * 删除评论
     * @param commentId
     */
    void deleteCommentById(Long commentId);

    /**
     * 获取帖子评论
     * @param blogCommentDTO
     */
    CommentSimpleVO queryComments(BlogCommentDTO blogCommentDTO);

    /**
     *获取帖子评论的子评论
     * @param blogSonCommentDTO
     */
    CommentSimpleVO getBlogSonComments(BlogSonCommentDTO blogSonCommentDTO);
}
